/**
 * ____________________ *
 *  ____ ____ ____ _  _ *
 *  |___ [__] |--< |\/| *
 * ____________________ *
 *
 * THE CORM PROJECT
 *
 * This file may only be used in accordance with the
 * terms of the Academic Free License ("AFL") v. 3.0,
 * as published by the Open Software Initiative.  A
 * copy of this license is provided in this source
 * release, and may be viewed online at:
 *
 * (http://www.opensource.org/licenses/afl-3.0.php)
 */
package org.eremite.corm.order;

import org.eremite.corm.Archetype;
import org.eremite.corm.product.Price;

import javax.measure.quantity.Quantity;
import java.util.Set;

/**
 * The ChargeLine archetype represents an additional
 * charge for an OrderLine over and above the
 * OrderLine value or an extra charge added to an
 * Order.
 *
 * ChargeLines might also be subject to taxes.
 */
public class ChargeLine extends Archetype {
    private Price<? extends Quantity> price;
    private String comment;
    private Set<TaxOnLine> taxes;

    public Price<? extends Quantity> getPrice() {
        return price;
    }

    public void setPrice(Price<? extends Quantity> price) {
        this.price = price;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    public Set<TaxOnLine> getTaxes() {
        return taxes;
    }

    public void setTaxes(Set<TaxOnLine> taxes) {
        this.taxes = taxes;
    }
}
